module model.imodel;

import utils.log;

interface IModel {
    protected static shared IModel ourInstance;

    public static shared(IModel) getInstance() shared nothrow {
        return ourInstance;
    }

    package bool init(string[] args) shared;

    package void run() shared;

    public string getDefaultProjectConfiguration() const shared;

    public shared(string)[] getRecentProjects() shared;
}
